// import React, { useState } from 'react';
// import { Pagination } from 'antd';

// const CustomPagination = ({
//     total,
//     defaultCurrent = 1,
//     defaultPageSize = 10,
//     showSizeChanger = false,
//     showQuickJumper = false,
//     showTotal = null,
//     onChange,
//     onShowSizeChange
// }) => {
//     // 管理当前页码状态
//     const [currentPage, setCurrentPage] = useState(defaultCurrent);
//     // 管理每页显示数量状态
//     const [pageSize, setPageSize] = useState(defaultPageSize);

//     // 处理页码改变事件
//     const handlePageChange = (page, size) => {
//         setCurrentPage(page);
//         setPageSize(size);
//         if (onChange) {
//             onChange(page, size);
//         }
//     };

//     // 处理每页显示数量改变事件
//     const handleShowSizeChange = (current, size) => {
//         setCurrentPage(1); // 切换每页显示数量时，重置页码为 1
//         setPageSize(size);
//         if (onShowSizeChange) {
//             onShowSizeChange(current, size);
//         }
//     };

//     // 中文语言配置
    

//     return (
//         <Pagination
//             current={currentPage}
//             pageSize={pageSize}
//             total={total}
//             showSizeChanger={showSizeChanger}
//             showQuickJumper={showQuickJumper}
//             // showTotal={showTotal}
//             onChange={handlePageChange}
//             onShowSizeChange={handleShowSizeChange}
//             locale={locale}
//         />
//     );
// };

// export default CustomPagination;



import React from 'react';
import { Pagination } from 'antd';

const PaginationComponent = ({ total, currentPage, pageSize, onPageChange, onShowSizeChange }) => {
    const locale = {
        items_per_page: '条/页',
        jump_to: '跳至',
        jump_to_confirm: '确定',
        page: '页',
        prev_page: '上一页',
        next_page: '下一页',
        prev_5: '向前 5 页',
        next_5: '向后 5 页',
        prev_3: '向前 3 页',
        next_3: '向后 3 页'
    };
    return (
        <Pagination
            total={total}
            current={currentPage}
            pageSize={pageSize}
            showSizeChanger
            pageSizeOptions={['2', '4', '6', '8']}
            showQuickJumper
            onChange={onPageChange}
            onShowSizeChange={onShowSizeChange}
            locale={locale}
        />
    );
};

export default PaginationComponent;


// import React, { useState, useRef, useEffect } from 'react';
// import { Pagination } from 'antd';
// import "../../css/lzk.css"
// const CustomPagination = ({
//     total,
//     pageSize,
//     currentPage,
//     onPageChange,
//     onShowSizeChange
// }) => {
//     const [isAnimating, setIsAnimating] = useState(false);
//     const paginationRef = useRef(null);

//     const handleShowSizeChange = (current, size) => {
//         setIsAnimating(true);
//         setTimeout(() => {
//             onShowSizeChange(current, size);
//             setIsAnimating(false);
//         }, 300); // 动画时长
//     };

//     useEffect(() => {
//         if (isAnimating) {
//             paginationRef.current.classList.add('shrink-animation');
//         } else {
//             paginationRef.current.classList.remove('shrink-animation');
//         }
//     }, [isAnimating]);

//     return (
//         <Pagination
//             ref={paginationRef}
//             total={total}
//             pageSize={pageSize}
//             current={currentPage}
//             showSizeChanger
//             onChange={onPageChange}
//             onShowSizeChange={handleShowSizeChange}
//         />
//     );
// };

// export default CustomPagination;